The invention is related to the field of data storage systems.
In data storage systems, the implementation of disk mirroring or Redundant Array of Independent Disks (RAID level 1 or RAID-1) on sets of disks is well known. In this configuration, a set of data is stored identically on two or more disks of a RAID-1 volume. A read operation is satisfied from one of the disks. A write operation involves writing the data to all of the disks. In the event of a disk failure, subsequent reads can be performed from a disk other than the failed disk. The failed disk can also be rebuilt by copying the entirety of the stored data from one of the other disks; thus, the availability of the data storage system is enhanced when RAID-1 is used.
RAID-1 is often used within a fairly tightly-coupled set of disks, such as disks within the same storage-area network (SAN) which share a common high-speed storage interconnection scheme. However, RAID-1 has also been implemented in a “distributed” fashion, namely across a set of disks which are separated geographically and are interconnected by a general data network rather than a specialized storage interconnection. Such a system requires relatively expensive long-haul communication channels which have limited bandwidth and increased latency compared to local-area, storage-oriented communication channels.
In storage systems, there is often a need to perform copy operations having a “bulk” nature, as opposed to more limited, discrete copying operations which involve the manipulation of data files or records by applications software. Examples of copy operations having a bulk nature include “data migration,” “point-in-time copy,” and “backup” operations. Data migration involves moving most or all of the data on a selected source disk to a target disk due to retirement of the source disk or growth of the data to a size which exceeds the capacity of the source disk. In a point-in-time copy operation, most or all the data of a disk is copied to another disk for different purposes. In a backup operation, a snapshot of data is copied from a production disk to another device for use in a subsequent “restore” operation such as in the case of loss of production data or the need to roll-back the data to an earlier point in time.
In systems employing distributed RAID-1s, a copy operation involves reading data from a disk of a source RAID-1 and writing the data to all the disks of a target RAID-1. This operation requires the transfer of data on all or most of the communication channels to the various locations where the disks of the target RAID-1 are positioned. However, bulk operations may saturate the communication channels (i.e., consume most or all the limited bandwidth), thereby slowing the operation itself and interfering with other operations which utilize the channels. There is thus a need in the art for a system and method which mitigates these disadvantages.